[INFO] fetching crate elfkit 0.0.7...
[INFO] fixing elfkit-0.0.7 against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=end=2015,2024 for pr-157817-2
[INFO] extracting crate elfkit 0.0.7 into /workspace/builds/worker-1-tc2/source
[INFO] started tweaking crates.io crate elfkit 0.0.7
[INFO] finished tweaking crates.io crate elfkit 0.0.7
[INFO] tweaked toml for crates.io crate elfkit 0.0.7 written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate elfkit 0.0.7 on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]      Locking 103 packages to latest compatible versions
[INFO] [stderr]       Adding ar v0.6.2 (available: v0.9.0)
[INFO] [stderr]       Adding bit-vec v0.5.1 (available: v0.9.1)
[INFO] [stderr]       Adding bitflags v1.3.2 (available: v2.13.0)
[INFO] [stderr]       Adding clap v2.34.0 (available: v4.6.1)
[INFO] [stderr]       Adding colored v1.9.4 (available: v3.1.1)
[INFO] [stderr]       Adding enum-primitive-derive v0.1.2 (available: v0.3.0)
[INFO] [stderr]       Adding env_logger v0.5.13 (available: v0.11.10)
[INFO] [stderr]       Adding glob v0.2.11 (available: v0.3.3)
[INFO] [stderr]       Adding indexmap v1.9.3 (available: v2.14.0)
[INFO] [stderr]       Adding itertools v0.7.11 (available: v0.15.0)
[INFO] [stderr]       Adding pretty_env_logger v0.2.5 (available: v0.5.0)
[INFO] [stderr]       Adding sha2 v0.7.1 (available: v0.11.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: `elfkit` (manifest) generated 1 warning
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] f6150998dd76f0e79e317f2e6db5bb0c3d3a94c44481ffd886a39e648a2da061
[INFO] running `Command { std: "docker" "start" "f6150998dd76f0e79e317f2e6db5bb0c3d3a94c44481ffd886a39e648a2da061", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "f6150998dd76f0e79e317f2e6db5bb0c3d3a94c44481ffd886a39e648a2da061" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f6150998dd76f0e79e317f2e6db5bb0c3d3a94c44481ffd886a39e648a2da061", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "f6150998dd76f0e79e317f2e6db5bb0c3d3a94c44481ffd886a39e648a2da061" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=end=2015,2024", kill_on_drop: false }`
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating Cargo.toml from 2015 edition to 2018
[INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: `elfkit` (manifest) generated 1 warning
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling unicode-xid v0.0.4
[INFO] [stderr]     Checking aho-corasick v1.1.4
[INFO] [stderr]     Checking generic-array v0.9.1
[INFO] [stderr]     Checking byte-tools v0.2.0
[INFO] [stderr]    Compiling quote v0.3.15
[INFO] [stderr]     Checking textwrap v0.11.0
[INFO] [stderr]     Checking fake-simd v0.1.2
[INFO] [stderr]     Checking getrandom v0.4.3
[INFO] [stderr]     Checking bit-vec v0.4.4
[INFO] [stderr]     Checking ansi_term v0.12.1
[INFO] [stderr]     Checking strsim v0.8.0
[INFO] [stderr]     Checking vec_map v0.8.2
[INFO] [stderr]     Checking colored v1.9.4
[INFO] [stderr]     Checking ar v0.6.2
[INFO] [stderr]     Checking itertools v0.7.11
[INFO] [stderr]     Checking glob v0.2.11
[INFO] [stderr]    Compiling synom v0.11.3
[INFO] [stderr]     Checking bit-vec v0.5.1
[INFO] [stderr]     Checking clap v2.34.0
[INFO] [stderr]     Checking digest v0.7.6
[INFO] [stderr]     Checking block-buffer v0.3.3
[INFO] [stderr]    Compiling syn v0.11.11
[INFO] [stderr]     Checking tempfile v3.27.0
[INFO] [stderr]     Checking bloom v0.3.2
[INFO] [stderr]     Checking sha2 v0.7.1
[INFO] [stderr]    Compiling num-traits v0.1.43
[INFO] [stderr]    Compiling enum-primitive-derive v0.1.2
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]     Checking chrono v0.4.45
[INFO] [stderr]     Checking regex v1.12.4
[INFO] [stderr]     Checking env_logger v0.5.13
[INFO] [stderr]     Checking pretty_env_logger v0.2.5
[INFO] [stderr]     Checking elfkit v0.0.7 (/opt/rustwide/workdir)
[INFO] [stderr]    Migrating src/lib.rs from 2015 edition to 2018
[INFO] [stderr]        Fixed src/symbol.rs (4 fixes)
[INFO] [stderr]        Fixed src/segment.rs (3 fixes)
[INFO] [stderr]        Fixed src/loader.rs (1 fix)
[INFO] [stderr]        Fixed src/relocation.rs (2 fixes)
[INFO] [stderr]        Fixed src/section.rs (7 fixes)
[INFO] [stderr]        Fixed src/error.rs (2 fixes)
[INFO] [stderr]        Fixed src/dynamic.rs (2 fixes)
[INFO] [stderr]        Fixed src/utils.rs (9 fixes)
[INFO] [stderr]        Fixed src/lib.rs (10 fixes)
[INFO] [stderr]        Fixed src/types.rs (1 fix)
[INFO] [stderr]        Fixed src/header.rs (2 fixes)
[INFO] [stderr]        Fixed src/elf.rs (8 fixes)
[INFO] [stderr]        Fixed src/strtab.rs (1 fix)
[INFO] [stderr]        Fixed src/symbolic_linker.rs (2 fixes)
[INFO] [stderr]    Migrating tests/simple_collector.rs from 2015 edition to 2018
[INFO] [stderr]    Migrating bin/readelf.rs from 2015 edition to 2018
[INFO] [stderr]        Fixed bin/readelf.rs (1 fix)
[INFO] [stderr]    Migrating bin/ld.rs from 2015 edition to 2018
[INFO] [stderr]    Migrating bin/linktree.rs from 2015 edition to 2018
[INFO] [stderr]    Migrating tests/layout.rs from 2015 edition to 2018
[INFO] [stderr]    Migrating bin/ldd.rs from 2015 edition to 2018
[INFO] [stderr]        Fixed bin/ldd.rs (5 fixes)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 11.89s
[INFO] [stderr] crater-edition-check: elfkit v0.0.7 (/opt/rustwide/workdir) updating edition from 2015 to 2018
[INFO] [stderr]     Checking elfkit v0.0.7 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/dynamic.rs:109:17
[INFO] [stdout]     |
[INFO] [stdout] 109 |     ) -> Result<(usize), Error>
[INFO] [stdout]     |                 ^     ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 109 -     ) -> Result<(usize), Error>
[INFO] [stdout] 109 +     ) -> Result<usize , Error>
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/elf.rs:606:9
[INFO] [stdout]     |
[INFO] [stdout] 606 | /         ///TODO this is shitty, because we need to replicate all the alignment code
[INFO] [stdout] 607 | |         ///also most of those sections dont actually need to be moved
[INFO] [stdout]     | |_____________________________________________________________________^
[INFO] [stdout] 608 | /         for sec in &mut self.sections[1..] {
[INFO] [stdout] 609 | |             if sec.header.addralign > 0 {
[INFO] [stdout] 610 | |                 let oa = hoff % sec.header.addralign;
[INFO] [stdout] 611 | |                 if oa != 0 {
[INFO] [stdout] ...   |
[INFO] [stdout] 615 | |         }
[INFO] [stdout]     | |_________- rustdoc does not generate documentation for expressions
[INFO] [stdout]     |
[INFO] [stdout]     = help: use `//` for a plain comment
[INFO] [stdout]     = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/elf.rs:682:59
[INFO] [stdout]     |
[INFO] [stdout] 682 |     pub fn remove_section(&mut self, at: usize) -> Result<(Section), Error> {
[INFO] [stdout]     |                                                           ^       ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 682 -     pub fn remove_section(&mut self, at: usize) -> Result<(Section), Error> {
[INFO] [stdout] 682 +     pub fn remove_section(&mut self, at: usize) -> Result<Section, Error> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/relocation.rs:180:17
[INFO] [stdout]     |
[INFO] [stdout] 180 |     ) -> Result<(usize), Error>
[INFO] [stdout]     |                 ^     ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 180 -     ) -> Result<(usize), Error>
[INFO] [stdout] 180 +     ) -> Result<usize , Error>
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/symbol.rs:173:17
[INFO] [stdout]     |
[INFO] [stdout] 173 |     ) -> Result<(usize), Error>
[INFO] [stdout]     |                 ^     ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 173 -     ) -> Result<(usize), Error>
[INFO] [stdout] 173 +     ) -> Result<usize , Error>
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/dynamic.rs:109:17
[INFO] [stdout]     |
[INFO] [stdout] 109 |     ) -> Result<(usize), Error>
[INFO] [stdout]     |                 ^     ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 109 -     ) -> Result<(usize), Error>
[INFO] [stdout] 109 +     ) -> Result<usize , Error>
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/elf.rs:606:9
[INFO] [stdout]     |
[INFO] [stdout] 606 | /         ///TODO this is shitty, because we need to replicate all the alignment code
[INFO] [stdout] 607 | |         ///also most of those sections dont actually need to be moved
[INFO] [stdout]     | |_____________________________________________________________________^
[INFO] [stdout] 608 | /         for sec in &mut self.sections[1..] {
[INFO] [stdout] 609 | |             if sec.header.addralign > 0 {
[INFO] [stdout] 610 | |                 let oa = hoff % sec.header.addralign;
[INFO] [stdout] 611 | |                 if oa != 0 {
[INFO] [stdout] ...   |
[INFO] [stdout] 615 | |         }
[INFO] [stdout]     | |_________- rustdoc does not generate documentation for expressions
[INFO] [stdout]     |
[INFO] [stdout]     = help: use `//` for a plain comment
[INFO] [stdout]     = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/elf.rs:682:59
[INFO] [stdout]     |
[INFO] [stdout] 682 |     pub fn remove_section(&mut self, at: usize) -> Result<(Section), Error> {
[INFO] [stdout]     |                                                           ^       ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 682 -     pub fn remove_section(&mut self, at: usize) -> Result<(Section), Error> {
[INFO] [stdout] 682 +     pub fn remove_section(&mut self, at: usize) -> Result<Section, Error> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/relocation.rs:180:17
[INFO] [stdout]     |
[INFO] [stdout] 180 |     ) -> Result<(usize), Error>
[INFO] [stdout]     |                 ^     ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 180 -     ) -> Result<(usize), Error>
[INFO] [stdout] 180 +     ) -> Result<usize , Error>
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/symbol.rs:173:17
[INFO] [stdout]     |
[INFO] [stdout] 173 |     ) -> Result<(usize), Error>
[INFO] [stdout]     |                 ^     ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 173 -     ) -> Result<(usize), Error>
[INFO] [stdout] 173 +     ) -> Result<usize , Error>
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/loader.rs:39:30
[INFO] [stdout]    |
[INFO] [stdout] 39 |         read:    RefCell<Box<ReadSeekSend>>,
[INFO] [stdout]    |                              ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 39 |         read:    RefCell<Box<dyn ReadSeekSend>>,
[INFO] [stdout]    |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/loader.rs:39:30
[INFO] [stdout]    |
[INFO] [stdout] 39 |         read:    RefCell<Box<ReadSeekSend>>,
[INFO] [stdout]    |                              ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 39 |         read:    RefCell<Box<dyn ReadSeekSend>>,
[INFO] [stdout]    |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/loader.rs:233:50
[INFO] [stdout]     |
[INFO] [stdout] 233 |     fn make_object(name: String, io: RefCell<Box<ReadSeekSend>>) -> Result<State, Error> {
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 233 |     fn make_object(name: String, io: RefCell<Box<dyn ReadSeekSend>>) -> Result<State, Error> {
[INFO] [stdout]     |                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/loader.rs:233:50
[INFO] [stdout]     |
[INFO] [stdout] 233 |     fn make_object(name: String, io: RefCell<Box<ReadSeekSend>>) -> Result<State, Error> {
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 233 |     fn make_object(name: String, io: RefCell<Box<dyn ReadSeekSend>>) -> Result<State, Error> {
[INFO] [stdout]     |                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected expression, found keyword `dyn`
[INFO] [stdout]    --> bin/readelf.rs:366:31
[INFO] [stdout]     |
[INFO] [stdout] 366 |                         match dyn.content {
[INFO] [stdout]     |                         ----- ^^^ expected expression
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         while parsing this `match` expression
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DynamicContent`
[INFO] [stdout]  --> bin/readelf.rs:6:21
[INFO] [stdout]   |
[INFO] [stdout] 6 | use elfkit::{types, DynamicContent, Elf, SectionContent};
[INFO] [stdout]   |                     ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> tests/layout.rs:146:46
[INFO] [stdout]     |
[INFO] [stdout] 146 |     let phdr = phdr_segments.get(0).unwrap();;
[INFO] [stdout]     |                                              ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> tests/layout.rs:158:49
[INFO] [stdout]     |
[INFO] [stdout] 158 |     let segment = load_segments.get(0).unwrap();;
[INFO] [stdout]     |                                                 ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> tests/layout.rs:255:50
[INFO] [stdout]     |
[INFO] [stdout] 255 |     let segment0 = load_segments.get(0).unwrap();;
[INFO] [stdout]     |                                                  ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> tests/layout.rs:256:50
[INFO] [stdout]     |
[INFO] [stdout] 256 |     let segment1 = load_segments.get(1).unwrap();;
[INFO] [stdout]     |                                                  ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> tests/layout.rs:306:50
[INFO] [stdout]     |
[INFO] [stdout] 306 |     let segment0 = load_segments.get(0).unwrap();;
[INFO] [stdout]     |                                                  ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> tests/layout.rs:307:50
[INFO] [stdout]     |
[INFO] [stdout] 307 |     let segment1 = load_segments.get(1).unwrap();;
[INFO] [stdout]     |                                                  ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> tests/layout.rs:308:50
[INFO] [stdout]     |
[INFO] [stdout] 308 |     let segment2 = load_segments.get(2).unwrap();;
[INFO] [stdout]     |                                                  ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> tests/layout.rs:471:50
[INFO] [stdout]     |
[INFO] [stdout] 471 |     let segment0 = load_segments.get(0).unwrap();;
[INFO] [stdout]     |                                                  ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected expression, found keyword `dyn`
[INFO] [stdout]    --> bin/readelf.rs:366:31
[INFO] [stdout]     |
[INFO] [stdout] 366 |                         match dyn.content {
[INFO] [stdout]     |                         ----- ^^^ expected expression
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         while parsing this `match` expression
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DynamicContent`
[INFO] [stdout]  --> bin/readelf.rs:6:21
[INFO] [stdout]   |
[INFO] [stdout] 6 | use elfkit::{types, DynamicContent, Elf, SectionContent};
[INFO] [stdout]   |                     ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> bin/ld.rs:627:91
[INFO] [stdout]     |
[INFO] [stdout] 627 |             .find(|&(_,s)|s.bind == types::SymbolBind::GLOBAL).map(|(i,_)|i).unwrap_or(0);;
[INFO] [stdout]     |                                                                                           ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `elfkit` (bin "readelf") due to 1 previous error; 1 warning emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `elfkit` (bin "readelf" test) due to 1 previous error; 1 warning emitted
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> bin/ld.rs:627:91
[INFO] [stdout]     |
[INFO] [stdout] 627 |             .find(|&(_,s)|s.bind == types::SymbolBind::GLOBAL).map(|(i,_)|i).unwrap_or(0);;
[INFO] [stdout]     |                                                                                           ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> bin/ld.rs:62:35
[INFO] [stdout]    |
[INFO] [stdout] 62 |                 Err(e)  => panic!(e),
[INFO] [stdout]    |                                   ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `elfkit::Error`
[INFO] [stdout]    |
[INFO] [stdout] 62 |                 Err(e)  => panic!("{:?}", e),
[INFO] [stdout]    |                                   +++++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 62 -                 Err(e)  => panic!(e),
[INFO] [stdout] 62 +                 Err(e)  => std::panic::panic_any(e),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> bin/ld.rs:62:35
[INFO] [stdout]    |
[INFO] [stdout] 62 |                 Err(e)  => panic!(e),
[INFO] [stdout]    |                                   ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: add a "{:?}" format string to use the `Debug` implementation of `elfkit::Error`
[INFO] [stdout]    |
[INFO] [stdout] 62 |                 Err(e)  => panic!("{:?}", e),
[INFO] [stdout]    |                                   +++++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 62 -                 Err(e)  => panic!(e),
[INFO] [stdout] 62 +                 Err(e)  => std::panic::panic_any(e),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "f6150998dd76f0e79e317f2e6db5bb0c3d3a94c44481ffd886a39e648a2da061", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f6150998dd76f0e79e317f2e6db5bb0c3d3a94c44481ffd886a39e648a2da061", kill_on_drop: false }`
[INFO] [stdout] f6150998dd76f0e79e317f2e6db5bb0c3d3a94c44481ffd886a39e648a2da061
